package iteratorPattern;

import lombok.Data;

import java.util.List;

/**
 * @author： pang-yun
 * @date： 2021-12-08 13:41
 * 功能目的 ：用于具体的 迭代器实现类
 */
@Data
public class ListIterator implements Iterator {

    private List<Object> list = null;
    private int index;

    @Override
    public Object first() {
        return list.get(0);
    }

    @Override
    public Object next() {
        if (hasNext()) {
            return list.get(++index);
        }
        return null;
    }


    @Override
    public boolean hasNext() {
        if (++index <= list.size()) {
            return true;
        }
        return false;
    }
}
